Ext.define('YXMES.sres.view.DeviceMaintainSetupView', {
	extend : 'Ext.form.Panel',
	xtype : 'sres_devicemaintainsetup',
	requires : [ 'UX.grid.CheckColumn' ],
	layout : {
	type : 'border'
	},
	itemId : 'frmDms',
	_isRootNode : true,
	items : [ {
	xtype : 'container',
	layout : {
		type : 'vbox',
		align : 'stretch'
	},
	region : 'center',
	items : [ {
		xtype : 'container',
		layout : {
			type : 'hbox',
			align : 'stretch'
		},
		flex : 1,
		items : [ {
			xtype : 'container',
			layout : {
				type : 'vbox',
				align : 'stretch'
			},
			flex : 1,
			items : [ {
				xtype : 'gridpanel',
				itemId : 'grdDeviceResource',
				columns : [ {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'resId',
					width : 150,
					text : T.label.deviceCode
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'resName',
					flex : 1,
					text : T.label.deviceName
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'resTypeDesc',
					width : 100,
					text : T.label.resType
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'resSpec',
					width : 120,
					text : T.label.spec
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'keeper',
					width : 100,
					text : T.label.keeper
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'maintainUserId',
					width : 100,
					text : T.label.maintainUser
				} ],
				flex : 1,
				title : T.label.device_resource
			}, {
				xtype : 'pagingtoolbar',
				itemId : 'bar4',
				displayInfo : true
			} ],
			bodyStyle : {
				'border-width' : 0
			}
		}, {
			xtype : 'container',
			layout : {
				type : 'vbox',
				align : 'stretch'
			},
			width : 300,
			items : [ {
				xtype : 'form',
				layout : {
					type : 'vbox',
					align : 'stretch'
				},
				itemId : 'frmSearch',
				flex : 1,
				region : 'east',
				title : T.label.search,
				items : [ {
					xtype : 'textfield',
					fieldLabel : T.label.deviceCode,
					name : 'resId'
				}, {
					xtype : 'textfield',
					fieldLabel : T.label.deviceName,
					name : 'resName'
				}, {
					xtype : 'combobox',
					queryMode : 'local',
					itemId : 'cmbResType',
					fieldLabel : T.label.resType,
					name : 'resType',
					displayField : 'data1',
					valueField : 'key1'
				} ],
				bodyStyle : {
					'border-width' : 0
				},
				defaults : {
					labelWidth : 80,
					labelSeparator : ':'
				}
			}, {
				xtype : 'toolbar',
				layout : {
					type : 'hbox'
				},
				items : [ {
					xtype : 'tbfill'
				}, {
					xtype : 'button',
					itemId : 'btnSearch',
					text : T.label.search,
					iconCls : 'icon-search'
				}, {
					xtype : 'button',
					itemId : 'btnReset',
					text : T.label.reset,
					iconCls : 'icon-reset'
				} ]
			} ],
			bodyStyle : {
				'border-width' : 0
			}
		} ],
		bodyStyle : {
			'border-width' : 0
		}
	}, {
		xtype : 'container',
		layout : {
			type : 'hbox',
			align : 'stretch'
		},
		flex : 1,
		items : [ {
			xtype : 'panel',
			layout : {
				type : 'vbox',
				align : 'stretch'
			},
			width : 300,
			title : T.label.all_maintain_items,
			items : [ {
				xtype : 'textfield',
				itemId : 'txtMaintainCond',
				emptyText : T.label.search
			}, {
				xtype : 'gridpanel',
				itemId : 'grdAllMtnItem',
				columns : [ {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'itemCode',
					width : 100,
					text : T.label.itemCode
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'itemName',
					flex : 1,
					text : T.label.itemName
				} ],
				flex : 1
			}, {
				xtype : 'pagingtoolbar',
				itemId : 'bar8'
			} ],
			bodyStyle : {
				'border-width' : 0
			}
		}, {
			xtype : 'toolbar',
			layout : {
				type : 'vbox'
			},
			vertical : true,
			items : [ {
				xtype : 'tbfill'
			}, {
				xtype : 'button',
				itemId : 'btnGoRight',
				iconCls : 'icon-go-right'
			}, {
				xtype : 'button',
				itemId : 'btnGoLeft',
				iconCls : 'icon-go-left'
			}, {
				xtype : 'tbfill'
			} ]
		}, {
			xtype : 'panel',
			layout : {
				type : 'vbox',
				align : 'stretch'
			},
			flex : 1,
			items : [ {
				xtype : 'gridpanel',
				itemId : 'grdDeviceMtnItem',
				columns : [ {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'itemCode',
					text : T.label.itemCode
				}, {
					xtype : 'gridcolumn',
					disabledSearch : false,
					hidden : false,
					dataIndex : 'itemName',
					flex : 1,
					text : T.label.itemName
				}, {
					xtype : 'gridcolumn',
					itemId : 'colMaintainMethod',
					editor : {
						xtype : 'combobox',
						queryMode : 'local',
						displayField : 'data1',
						store : {
							proxy : {
								reader : {
									root : 'cdsDtlList',
									type : 'json'
								},
								module : 'BasViewCommonDataSetupDetailService',
								extraParams : {
									groupName : 'MAINTAIN_METHOD'
								},
								type : 'zbusrpc'
							},
							autoLoad : true,
							fields : [ 'key1', 'data1' ]
						},
						valueField : 'key1'
					},
					disabledSearch : false,
					renderer : function(value,metaData){
					    var record = metaData.column.getEditor().getStore().findRecord('key1',value);
					    
					    return record?record.get('data1'):value;
					},
					hidden : false,
					dataIndex : 'mtnMethod',
					text : T.label.maintainMethod
				}, {
					xtype : 'gridcolumn',
					itemId : 'colMaintainCycle',
					editor : {
						xtype : 'combobox',
						queryMode : 'local',
						displayField : 'data1',
						store : {
							proxy : {
								reader : {
									root : 'cdsDtlList',
									type : 'json'
								},
								module : 'BasViewCommonDataSetupDetailService',
								extraParams : {
									groupName : 'MAINTAIN_CYCLE'
								},
								type : 'zbusrpc'
							},
							autoLoad : true,
							fields : [ 'key1', 'data1' ]
						},
						valueField : 'key1'
					},
					disabledSearch : false,
					renderer : function(value,metaData){
					    var record = metaData.column.getEditor().getStore().findRecord('key1',value);
					    
					    return record?record.get('data1'):value;
					},
					hidden : false,
					dataIndex : 'mtnCycle',
					text : T.label.maintainCycle
				}, {
					xtype : 'numbercolumn',
					itemId : 'colCycleValue',
					editor : {
						xtype : 'numberfield',
						minValue : 0
					},
					disabledSearch : false,
					hidden : false,
					dataIndex : 'mtnCycleValue',
					width : 80,
					text : T.label.cycleValue
				}, {
					xtype : 'checkcolumn',
					itemId : 'colNotice',
					disabledSearch : false,
					renderer : function(value){
					    return (new Ext.grid.column.CheckColumn).renderer(value==="Y");
					},
					hidden : false,
					dataIndex : 'noticeFlag',
					width : 80,
					text : T.label.notice
				}, {
					xtype : 'gridcolumn',
					itemId : 'colMemo',
					editor : {
						xtype : 'textfield'
					},
					disabledSearch : false,
					hidden : false,
					dataIndex : 'memo',
					text : T.label.memo
				} ],
				flex : 1,
				plugins : {
					clicksToEdit : 2,
					ptype : 'rowediting'
				},
				title : T.label.device_maintain_items,
				items : [  ]
			}, {
				xtype : 'pagingtoolbar',
				itemId : 'bar15'
			} ],
			bodyStyle : {
				'border-width' : 0
			}
		} ],
		bodyStyle : {
			'border-width' : 0
		}
	}, {
		xtype : 'toolbar',
		layout : {
			type : 'hbox'
		},
		items : [ {
			xtype : 'tbfill'
		}, {
			xtype : 'button',
			itemId : 'btnSave',
			text : T.label.save,
			iconCls : 'icon-save'
		} ]
	} ],
	bodyStyle : {
		'border-width' : 0
	}
	} ],
	title : T.label.DeviceMaintainSetup,
	bodyPadding : 2,
	bodyStyle : {
	'border-width' : 0
	},
	defaults : {
	labelWidth : 80,
	labelSeparator : ':'
	}
});